package com.diaohw.module.system.service;

import com.diaohw.module.system.obj.dto.SysMenuDTO;
import com.diaohw.module.system.obj.query.SysMenuQuery;
import com.diaohw.module.system.obj.vo.RouteVO;
import com.diaohw.module.system.obj.vo.SysMenuVO;
import com.diaohw.platform.common.obj.page.PageResultVo;

import java.util.List;

/**
 * <p>
 * 部门 服务类
 * </p>
 *
 * @author D-Hw
 * @since 2024-07-05
 */
public interface SysMenuService {

    /**
     * 新增
     */
    SysMenuVO create(SysMenuDTO data);

    /**
     * 更新
     */
    SysMenuVO update(String id, SysMenuDTO data);

    /**
     * 删除
     */
    Boolean delete(String id);

    /**
     * 依据ID查看信息
     */
    SysMenuVO detail(String id);

    /**
     * 查询列表
     */
    List<SysMenuVO> findByList(SysMenuQuery query);

    /**
     * 分页查看
     */
    PageResultVo<SysMenuVO> findByPage(SysMenuQuery query);

    /**
     * 获取路由列表
     */
    List<RouteVO> routes();

}
